//该文件专门用于创建整个应用的路由器
import VueRouter from 'vue-router'

import About from '../pages/About.vue'
import Home from '../pages/Home.vue'
import news from '../pages/news.vue'
import Message from '../pages/Message.vue'
import Deatail from '../pages/Deatail.vue'
//创建并暴露一个路由器
const router = new VueRouter({
    routes:[
        {
            path:'/about',
            component:About,
            meta:{title:'关于'}
        },
        {
            path:'/home',
            component:Home,
            meta:{title:'主页'},
            children:[
                {
                    path:'news',
                    component:news,
                    meta:{
                        isAuth:true,
                        title:'新闻',
                    }
                },
                {
                    path:'message',
                    component:Message,
                    meta:{
                        isAuth:true,
                        title:'信息',
                    },
                    children:[
                        {
                        name:'xiangqing',
                        path:'deatail/:id/:title',
                        component:Deatail,
                        meta:{title:'详情'},
                        //已k：v直接传给deatail
                        // props:{a:1,b:2}
                        //直接将message获得的params参数传给deatail
                        // props:true
                        //函数写法 query
                        props($route){
                            return{
                            id:$route.query.id,
                            title:$route.query.title
                            }
                        }
                        }
                    ]
                }
            ]
        },
        
    ]
})

//全局前置路由首位。初始的时候被调用，每次路由切换之前被调用
router.beforeEach((to,from,next)=>{
    //判断是否需要验证权限
     if(to.meta.isAuth){
        //如果是并且school式jlkj就放行不然不放行
        if(localStorage.getItem('school') === 'jlkj'){
            next()
        }else{
            alert('学校名称不对')
        }
        // 不是直接放行
     }else{
        next()
     }
})

//后置路由，一般用于改title名字
router.afterEach((to,from)=>{
    document.title = to.meta.title || '快乐系统'
})

export default router